The development of electronic devices with printed circuit boards typically involves many steps, known as a design flow. This design flow typically starts with a specification for a new circuit to be implemented with a printed circuit board. The specification of the new circuit can be transformed into a circuit design, such as a netlist, for example, by a schematic capture tool or by synthesizing a logical circuit design, sometimes referred to as a register transfer level (RTL) description of the circuit. The netlist, commonly specified in an Electronic Digital Exchange Format (EDIF), can describe nets or connectivity between various devices or instances in the circuit design.
The design flow continues by verifying functionality of the circuit design, for example, by simulating or emulating the circuit design and verifying that the results of the simulation or emulation correspond with an expected output from the circuit design. The functionality also can be verified by statically checking the circuit design for various attributes that may be problematic during operation of an electronic device built utilizing the circuit design.
Once the circuit design has been functionally verified, the design flow continues to design layout and routing, which includes placing and interconnecting various components into a representation of a printed circuit board. This procedure can be implemented in many different ways, but typically, through the use of a layout tool, which can present a two-dimensional graphical view of the printed circuit board and allow a designer to drag or place parts from a library onto the printed circuit board. The layout tool can validate the electronic device and perform various design rule checks on placed parts to ensure that the electronic device can be effectively manufactured.
Since many electronic devices made on printed circuit boards will be included within a product, the placement and routing of the components on the printed circuit board may be constrained to ensure the product can be effectively manufactured. Some of these constraints can be derived from the industrial or mechanical design of the product that will eventually house the printed circuit board. These mechanical constraints can include such things as physical mounting information, dimensions of an enclosure in which the printed circuit board will reside, presence of mechanical heat dissipation devices, or the like.
Conventionally, these mechanical constraints have been provided to the layout tool on an ad hoc basis, often through collaboration between electrical design and mechanical or industrial design teams at various times through the product design process. Some layout tools can extrapolate limited attributes associated with these mechanical constraints from mechanical designs shared via an intermediate data format (IDF) exchange interface with other tools developing the product. For example, these layout tools can identify a location of where a printed circuit board is to mounted to a product based on the mechanical designs shared via the IDF exchange interface, but not size or shape of a mounting hole or physical dimensions of a faster utilized to affix the printed circuit board to the product via the mounting hole. This lack of information can lead to a lack of congruency between the mechanical design and the printed circuit board design. Since, in most product design flows, the industrial or mechanical design has the highest priority, this lack of congruency prompts the electrical design teams to iteratively re-design the electronic device implemented with the printed circuit board, which can lengthen a time to market for the product.